<?php
/*
 * Created on 08/nov/2010
 *
 * Matteo Nati
 * 
 */
  
 include_once '../InfoManager/Constants.php';
 include_once '../Utility/RMobUtils.php';
 
 if (isset($_GET["id"])){
 	
 	$out='';
 	
 	$conn = mysql_connect(DBHOST, DBUSER, DBPASS);
	mysql_select_db(DBNAME);
	
	$UDID = RMobUtils::escape_var($_GET["id"]);//identificativo del telefono
	$device = RMobUtils::escape_var($_GET["device"]);//identificativo del dispositivo

	$query = "select COUNT(*) from Log_Searches where ID_Device=\"$UDID\"";
	$result = mysql_query($query);
	$a = mysql_fetch_array($result);
	$cnt = intVal($a[0]);
	
	$array_iphone = array("Lo sapevi che...|||...puoi disattivare i servizi che non ti servono?", "Lo sapevi che...|||...RMob è l'unica app che integra nel calcolo del percorso l'uso del car sharing?", "Lo sapevi che...|||...i tempi di percorrenza per il percorso in auto sono aggiornati ogni 5 minuti?", "Lo sapevi che...|||...puoi seguirci su Facebook e Twitter?");
	$array_android = array("Lo sapevi che...|||...puoi disattivare i servizi che non ti servono?", "Lo sapevi che...|||...puoi seguirci su Facebook e Twitter?", "Lo sapevi che...|||...RMob è disponibile anche per iPhone?");
	
	$out = "Avviso|||RMob al momento non è funzionante a causa di alcuni problemi nel recupero delle informazioni dal sito dell'ATAC. Stiamo lavorando per risolverli al più presto. RMob Team";
	/* 
	if (0){//$cnt<3){//primo accesso dell'utente
		$out = "Benvenuto!!!|||RMob è un'applicazione che ti assiste durante i tuoi spostamenti! Potrai monitorare le fermate, le stazioni di bike sharing e i parcheggi di tuo gradimento; se invece non sai come arrivare a destinazione, ci pensa RMob a guidarti, con l'uso dei soli mezzi pubblici, car sharing, bike sharing oppure con il tuo mezzo privato!";
	}
	else{
		if(empty($device)){//iphone: se la versione è la 2.0 mando alert sulla realtà aumentata
			$info = query("select * from Log_Users where ID = \"$UDID\" limit 1");
			$info=$info[0];
			if($info['RMob_v']=='2.0'){
				$exists = query("select 1 as indb from alert where AlertID=1 and ID=\"$UDID\" and Device=\"$info[Device]\"");
				$exists=$exists[0]['indb'];
				if(!$exists){
					$out="Lo sapevi che...|||...mettendo il tuo dispositivo in orizzontale puoi provare la realtà aumentata?";
					query("replace alert set AlertID=1, ID=\"$UDID\", Device=\"$info[Device]\"");
				}
			}
			else{//iphone: altrimento mando alert sulla nuova versione
				$exists = query("select 1 as indb from alert where AlertID=2 and ID=\"$UDID\" and Device=\"$info[Device]\"");
				$exists=$exists[0]['indb'];
				if(!$exists){
					$out="Lo sapevi che...|||...è uscita una nuova versione di RMob? Scaricala subito dall'AppStore!";
					query("replace alert set AlertID=2, ID=\"$UDID\", Device=\"$info[Device]\"");
				}

			}	
		}
		*/
		if(empty($out)){
			$nobusinfo = query("select * from ifermata_news where title like '%Tempi di attesa bus%' limit 1");
			if(!empty($nobusinfo)){
				$out=$nobusinfo[0]['title']."|||".$nobusinfo[0]['message'];
				$deltatime=(strtotime("now")-strtotime($nobusinfo[0]['lastupdate']))/(60*60);//differenza di tempo in ore
				if($deltatime>1)//se le news sono più vecchie di un'ora le aggiorno in background (se atacmobile è disponibile)
					system("php CacheNews.php > ../Log/systemdummyoutput.txt &"); //refresh della cache delle news in background	
			}
		}
		
		if(empty($out)){
			//cerco le news dell'ATAC nel db
			$info = mysql_query("select * from ifermata_news order by rand() limit 3",$conn);
			$lastupdate='';
			while($a = mysql_fetch_array($info)){
				$text.= "• ".$a['title']."\n";
				$lastupdate=$a['lastupdate'];
			}
			$deltatime=(strtotime("now")-strtotime($lastupdate))/(60*60);//differenza di tempo in ore
			if(strlen($text)<350 && $deltatime<6){//le news devono essere lunghe al max 350 caratteri e non devono essere piu vecchie di sei ore
				$out="Notizie Importanti|||$text";
			}
			else{
			  //se non ho trovato news aggiornate, invio un messaggio di info su rmob e aggiorno le info nel db in background
				if(empty($device)){//iphone
				$randNum = rand(0,count($array_iphone)-1);
				$out = $array_iphone[$randNum];		
				}
				else{//android
					$randNum = rand(0,count($array_android)-1);
					$out = $array_android[$randNum];		
				}
			}
			if($deltatime>1)//se le news sono più vecchie di un'ora le aggiorno in background (se atacmobile è disponibile)
				system("php CacheNews.php > ../Log/systemdummyoutput.txt &"); //refresh della cache delle news in background	
		}
	}
	print $out;	
 	mysql_close($conn);
 }
 
 function query($query)
{ 
	global $conn;
  $a = array();
  $ris = mysql_query($query,$conn);
  $mysqlerrno = mysql_errno($conn); 
  if ($mysqlerrno != 0)
  { 
    return false;
  }
  else if ($ris === true)
    return true;
  else
    while ($row = mysql_fetch_array($ris,MYSQL_ASSOC))
      $a[] = $row;
  return $a;  
}
?>